package com.yuebu.yuebubtlib;

import java.util.UUID;

/**
 * 常量定义
 */
public class Constants {
    //客户端特性配置描述符（BLE蓝牙通讯）
    public static final String STR_DESCRIPTOR_CCCD = "00002902-0000-1000-8000-00805f9b34fb";
    public static final UUID DESCRIPTOR_CCCD = UUID.fromString(STR_DESCRIPTOR_CCCD);
    //service通道
    public static final String STR_SERVICE_UUID = "00000001-0000-1000-8000-00805f9b34fb";
    public static final UUID SERVICE_UUID = UUID.fromString(STR_SERVICE_UUID);

    //write发送通道
    public static final String STR_WRITE_SERVICE_UUID_BASIC = "00000002-0000-1000-8000-00805f9b34fb";
    public static final UUID WRITE_SERVICE_UUID_BASIC = UUID.fromString(STR_WRITE_SERVICE_UUID_BASIC);

    //notify
    public static final String STR_NOTIFY_SERVICE_UUID_ADVANCE = "00000003-0000-1000-8000-00805f9b34fb";
    public static final UUID NOTIFY_SERVICE_UUID_ADVANCE = UUID.fromString(STR_NOTIFY_SERVICE_UUID_ADVANCE);

    //获取电量通道
    public static final String STR_BATTERY_SERVICE_UUID = "0000180f-0000-1000-8000-00805f9b34fb";
    public static final UUID BATTERY_SERVICE_UUID = UUID.fromString(STR_BATTERY_SERVICE_UUID);
    //电量notify
    public static final String STR_BATTERY_LEVEL_UUID = "00002a19-0000-1000-8000-00805f9b34fb";
    public static final UUID BATTERY_LEVEL_UUID = UUID.fromString(STR_BATTERY_LEVEL_UUID);
    //ota升级
    public static final UUID OTA_UPDATE_SERVICE_UUID = UUID.fromString("0000ff00-0000-1000-8000-00805f9b34fb"); // The UUID for service "FF00"
    public static final UUID OTA_UPDATE_CHARACTERISTIC_UUID = UUID.fromString("0000ff01-0000-1000-8000-00805f9b34fb"); // The UUID for service "FF01"


    //命令定义
    public static final byte CMD_SET_PERSONAL_INFO_BASIC = (byte) 0x83;//设置个人信息
    public static final byte SET_PERSONAL_INFO_POSITIVE_BASIC = (byte) 0x23;//设置个人信息成功返回
    public static final byte SET_PERSONAL_INFO_NEGATIVE_BASIC = (byte) 0x03;//设置个人信息失败返回

    public static final byte CMD_READ_SPORT_AND_SLEEP_DATA_BASIC = (byte) 0xc4;//读取运动和睡眠数据(一周数据曲线图)
    public static final byte READ_SPORT_AND_SLEEP_DATA_POSITIVE_BASIC = (byte) 0x24;//读取运动和睡眠数据成功返回
    public static final byte READ_SPORT_AND_SLEEP_DATA_NEGATIVE_BASIC = (byte) 0x04;//读取运动和睡眠数据失败返回

    public static final byte CMD_READ_DEVICE_REAL_STEP_BASIC = (byte) 0xc6;//读取设备实时步数
    public static final byte READ_DEVICE_REAL_STEP_POSITIVE_BASIC = (byte) 0x26;//读取设备实时步数成功返回
    public static final byte READ_DEVICE_REAL_STEP_NEGATIVE_BASIC = (byte) 0x06;//读取设备实时步数失败返回

    public static final byte CMD_RESET_TO_DEFAULTS_BASIC = (byte) 0x87;//恢复默认设置
    public static final byte RESET_TO_DEFAULTS_POSITIVE_BASIC = (byte) 0x27;//恢复默认设置成功返回
    public static final byte RESET_TO_DEFAULTS_NEGATIVE_BASIC = (byte) 0x07;//恢复默认设置失败返回

    public static final byte CMD_CLEAR_DATA_BASIC = (byte) 0x88;//清除数据
    public static final byte CLEAR_DATA_POSITIVE_BASIC = (byte) 0x28;//清除数据成功返回
    public static final byte CLEAR_DATA_NEGATIVE_BASIC = (byte) 0x08;//清除数据失败返回

    public static final byte CMD_SET_DEVICE_TIME_BASIC = (byte) 0xc2;//设置设备时间
    public static final byte SET_DEVICE_TIME_POSITIVE_BASIC = (byte) 0x22;//设置设备时间成功返回
    public static final byte SET_DEVICE_TIME_NEGATIVE_BASIC = (byte) 0x02;//设置设备时间失败返回

    public static final byte CMD_READ_DEVICE_TIME_BASIC = (byte) 0x89;//读取设备时间
    public static final byte READ_DEVICE_TIME_POSITIVE_BASIC = (byte) 0x29;//读取设备时间成功返回
    public static final byte READ_DEVICE_TIME_NEGATIVE_BASIC = (byte) 0x09;//读取设备时间失败返回

    public static final byte CMD_APP_WARN_BAND_BASIC = (byte) 0xa4;//app提醒手环
    public static final byte APP_WARN_BAND_POSITIVE_BASIC = (byte) 0xa4;//app提醒手环成功返回


    public static final byte CMD_READ_BLUETOOTH_DEVICE_MAC_ADDRESS_BASIC = (byte) 0xfa;//读取设备蓝牙地址
    public static final byte READ_BLUETOOTH_DEVICE_MAC_ADDRESS_POSITIVE_BASIC = (byte) 0xfa;//读取设备蓝牙地址成功返回

    public static final byte CMD_READ_BLUETOOTH_DEVICE_FIRMWARE_VERSION_BASIC = (byte) 0xfb;//读取设备固件版本号
    public static final byte READ_BLUETOOTH_DEVICE_FIRMWARE_VERSION_POSITIVE_BASIC = (byte) 0xfb;//读取设备固件版本号成功返回

    public static final byte CMD_SET_OTA_MODE_BASIC = (byte) 0xfc;//进入ota模式


    public static final byte CMD_SET_ALARM_NAME_BASIC = (byte) 0xfd;//设置闹钟名称
    public static final byte SET_ALARM_NAME_POSITIVE_BASIC = (byte) 0xfd;//设置闹钟名称成功的返回

    public static final byte CMD_SET_SCHEDULE_OFFLINE_ALARM_BASIC = (byte) 0xfe;//设置日程离线闹钟
    public static final byte SET_SCHEDULE_OFFLINE_ALARM_POSITIVE_BASIC = (byte) 0xfe;//设置日程离线闹钟成功返回
    public static final byte SET_SCHEDULE_OFFLINE_ALARM_NEGATIVE_BASIC = (byte) 0x0e;//设置日程离线闹钟失败返回

    public static final byte CMD_DRINKING_WATER_BASIC = (byte) 0x84;//设置饮水

    public static final byte CMD_SEDENTARY_BASIC = (byte) 0x86;//久坐
    public static final byte SET_SEDENTARY_ALARM_POSITIVE = (byte) 0x32;//设置久坐闹钟成功
    public static final byte SET_SEDENTARY_ALARM_NEGATIVE = (byte) 0x0d;//设置久坐闹钟失败

    public static final byte CMD_WEATHER_BASIC = (byte) 0xf2;//设置天气
    public static final byte WEATHER_POSITIVE_BASIC = (byte) 0xf2;//设置天气成功返回

    public static final byte CMD_ANTI_LOST_BASIC = (byte) 0xf3;//防丢
    public static final byte ANTI_LOST_POSITIVE_BASIC = (byte) 0xf3;//防丢成功返回

    public static final byte CMD_TAKE_PHOTO_BASIC = (byte) 0xf5;//拍照

    public static final byte CMD_PLAY_MUSIC_BASIC = (byte) 0xf6;//音乐播放

    public static final byte CMD_SET_SPORT_PARAMETER_ADVANCE = (byte) 0x91;//设置运动参数
    public static final byte SET_SPORT_PARAMETER_POSITIVE_ADVANCE = (byte) 0x31;//设置运动参数成功返回
    public static final byte SET_SPORT_PARAMETER_NEGATIVE_ADVANCE = (byte) 0x11;//设置运动参数失败返回

    public static final byte CMD_SET_BODY_CHARACTERISTICS_VALUE_ADVANCE = (byte) 0x92;//设置人体特征阈值(心率告警值)
    public static final byte SET_BODY_CHARACTERISTICS_VALUE_POSITIVE_ADVANCE = (byte) 0x32;//设置人体特征阈值成功返回
    public static final byte SET_BODY_CHARACTERISTICS_VALUE_NEGATIVE_ADVANCE = (byte) 0x12;//设置人体特征阈值失败返回

    public static final byte CMD_READ_REAL_HEART_RATE = (byte) 0x93;//切换实时传感器检测模式
    public static final byte READ_REAL_HEART_RATE_POSITIVE = (byte) 0x99;//切换实时传感器检测模式成功返回
    public static final byte READ_REAL_HEART_RATE_NEGATIVE = (byte) 0x13;//切换实时传感器检测模式失败返回

    public static final byte CMD_SWITCH_SPORT_DETECTION_MODE_ADVANCE = (byte) 0x94;//切换运动检测模式
    public static final byte SWITCH_SPORT_DETECTION_MODE_POSITIVE_ADVANCE = (byte) 0x34;//切换运动检测模式成功返回
    public static final byte SWITCH_SPORT_DETECTION_MODE_NEGATIVE_ADVANCE = (byte) 0x14;//切换运动检测模式失败返回

    public static final byte CMD_CLEAR_SPORT_DATA_ADVANCE = (byte) 0x96;//清除运动数据
    public static final byte CLEAR_SPORT_DATA_POSITIVE_ADVANCE = (byte) 0x36;//清除运动数据成功返回
    public static final byte CLEAR_SPORT_DATA_NEGATIVE_ADVANCE = (byte) 0x16;//清除运动数据失败返回

    public static final byte CMD_BLUETOOTH_DEVICE_REPORT_REALTIME_DATA_ABVANCE = (byte) 0x97;//蓝牙设备上报运动实时数据(设备通知app)
    public static final byte BLUETOOTH_DEVICE_REPORT_REALTIME_DATA_POSITIVE_ABVANCE = (byte) 0x37;//蓝牙设备上报运动实时数据成功返回
    public static final byte BLUETOOTH_DEVICE_REPORT_REALTIME_DATA_NEGATIVE_ABVANCE = (byte) 0x17;//蓝牙设备上报运动实时数据失败返回

    public static final byte CMD_EAT_MEDICINE_WARN_ABVANCE = (byte) 0x98;//吃药提醒
    public static final byte EAT_MEDICINE_WARN_POSITIVE_ABVANCE = (byte) 0x38;//吃药提醒成功返回
    public static final byte EAT_MEDICINE_WARN_NEGATIVE_ABVANCE = (byte) 0x18;//吃药提醒失败返回

    public static final byte CMD_READ_HEART_RATE_ABVANCE = (byte) 0xc5;//读取心率
    public static final byte READ_HEART_RATE_POSITIVE_ABVANCE = (byte) 0x25;//读取心率成功返回
    public static final byte READ_HEART_RATE_NEGATIVE_ABVANCE = (byte) 0x05;//读取心率失败返回

    public static final byte CMD_SET_LEFT_AND_RIGTH_HAND_ABVANCE = (byte) 0x9a;//设置左右手
    public static final byte SET_LEFT_AND_RIGTH_HAND_POSITIVE_ABVANCE = (byte) 0x2a;//设置左右手成功返回
    public static final byte SET_LEFT_AND_RIGTH_HAND_NEGATIVE_ABVANCE = (byte) 0x1a;//设置左右手失败返回

    public static final byte CMD_SET_DEVICE_PARAMETER_ABVANCE = (byte) 0x9b;//设置设备参数
    public static final byte SET_DEVICE_PARAMETER_POSITIVE_ABVANCE = (byte) 0x2b;//设置设备参数成功返回
    public static final byte SET_DEVICE_PARAMETER_NEGATIVE_ABVANCE = (byte) 0x1b;//设置设备参数失败返回

    public static final byte CMD_SET_OR_VERIFICATION_UNLOCK_PWD_ABVANCE = (byte) 0x9c;//设置/验证解锁密码
    public static final byte SET_OR_VERIFICATION_UNLOCK_PWD_POSITIVE_ABVANCE = (byte) 0x2c;//设置/验证解锁密码成功返回
    public static final byte SET_OR_VERIFICATION_UNLOCK_PWD_NEGATIVE_ABVANCE = (byte) 0x1c;//设置/验证解锁密码失败返回

    public static final byte CMD_SET_AUTO_SLEEP_TIME_ABVANCE = (byte) 0x9d;//设置自动睡眠时间
    public static final byte SET_AUTO_SLEEP_TIME_POSITIVE_ABVANCE = (byte) 0x2d;//设置自动睡眠时间成功返回
    public static final byte SET_AUTO_SLEEP_TIME_NEGATIVE_ABVANCE = (byte) 0x1d;//设置自动睡眠时间失败返回

    public static final byte CMD_SET_BAND_SCENES_ABVANCE = (byte) 0x9e;//设置手环场景
    public static final byte SET_BAND_SCENES_POSITIVE_ABVANCE = (byte) 0x2e;//设置手环场景成功返回
    public static final byte SET_BAND_SCENES_NEGATIVE_ABVANCE = (byte) 0x1e;//设置手环场景失败返回

    public static final byte CMD_DEVICE_REPORTED_OPERATION_COMMAND_ABVANCE = (byte) 0x9f;//设备上报操作命令
    public static final byte DEVICE_REPORTED_OPERATION_COMMAND_POSITIVE_ABVANCE = (byte) 0x2f;//设备上报操作命令成功返回
    public static final byte DEVICE_REPORTED_OPERATION_COMMAND_NEGATIVE_ABVANCE = (byte) 0x1f;//设备上报操作命令失败返回

    public static final byte CMD_CONTROL_BAND_ABVANCE = (byte) 0xff;//控制手环
    public static final byte CONTROL_BAND_POSITIVE_ABVANCE = (byte) 0xff;//控制手环成功返回

    public static final byte CMD_CONTROL_BAND_ANCS_ABVANCE = (byte) 0xa1;//控制手环ANCS
    public static final byte CONTROL_BAND_ANCS_ABVANCE = (byte) 0xa1;//控制手环ANCS成功返回

    public static final byte CMD_SYNCHRONIZE_SPORT_DATA_ABVANCE = (byte) 0xa2;//同步运动数据
    public static final byte SYNCHRONIZE_SPORT_DATA_POSITIVE_ABVANCE = (byte) 0xa2;//同步运动数据成功返回

    public static final byte CMD_SYNCHRONIZE_HEART_RATE_DATA_ABVANCE = (byte) 0xa3;//同步运动心率数据
    public static final byte SYNCHRONIZE_HEART_RATE_DATA_POSITIVE_ABVANCE = (byte) 0xa3;//同步运动心率数据成功返回

    public static final byte CMD_SET_DEVICE_PARAMETER = (byte) 0x9b;//设置手环参数
    public static final byte SET_DEVICE_PARAMETER_POSITIVE = (byte) 0x2b;//设置手环参数成功
    public static final byte SET_DEVICE_PARAMETER_NEGATIVE = (byte) 0x1b;//设置手环参数失败

    public static final int BLUETOOTHGATTSERVICE_IS_NULL = 100;
    public static final int CONNECTED_ERROR = 101;

//    public static final int PUSH_TYPE_CALL = 1;//来电提醒
//    public static final int PUSH_TYPE_MESSAGE = 2;//短信提醒
//    public static final int PUSH_TYPE_MAIL = 3;//邮件提醒
//    public static final int PUSH_TYPE_SCHEDULE = 4;//日程提醒
//    public static final int PUSH_TYPE_LOW = 5;//手机低电提醒
//    public static final int PUSH_TYPE_FACEBOOK = 6;//Facebook
//    public static final int PUSH_TYPE_TWITTER = 7;//Twitter
//    public static final int PUSH_TYPE_WECHAT = 8;//微信
//    public static final int PUSH_TYPE_QQ = 9;//qq
//    public static final int PUSH_TYPE_SKYPE = 10;//skype
//    public static final int PUSH_TYPE_LINE = 11;//line
//    public static final int PUSH_TYPE_WHATSAPP = 12;//whatsapp
//    public static final int PUSH_TYPE_MISSED_CALL = 13;//未接来电
//    public static final int PUSH_TYPE_MISSED_MESSAGE = 14;//未读短信
//    public static final int PUSH_TYPE_NAME = 15;//人名
}